Generally described, a variety of computer software applications output audio data as part of the function of the software application. Examples of software applications outputting audio data include multi-media software applications for playing various media, presentation software applications for generating audio data as part of a presentation, and other software applications that generate some type of audio signal as part of a user interaction. In one typical computing system environment, audio signals from the software applications are processed along various stages in a computer system before reaching the speakers and being converted to sound audible by a user. The various stages in the computer system can be thought of as an audio setting hierarchy having one or more levels. Each level in the audio setting hierarchy corresponds to a volume setting control that can have an impact on the overall volume of audio signals generated by a software application. Accordingly, the overall output volume of the audio signals generated by a software application corresponds to the product of the volume settings for each level of the audio setting hierarchy.
FIG. 1 is a block diagram illustrative of a set of conventional user interfaces for manipulating audio hierarchy settings in a computer system. As illustrated in FIG. 1, a first audio setting control corresponds to a volume control setting at the software application level. A second audio setting control corresponds to a mute control also at the software application level. The first and second audio setting controls are typically associated with user interface display 100 associated with the particular software application generating the audio signals. In an illustrative example, the first and second control can be represented as a slider bar 102 for adjusting the volume setting and mute control 104 on the display 100. Further, although the first and second audio setting controls 102 and 104 are illustrated as being associated with a particular software application, these controls may be omitted from software applications.
With continued reference to FIG. 1, a third audio setting control 108 corresponds to a volume control on a channel level for processing all audio signals generated by all the instantiated software applications. A fourth audio setting control 110 corresponds to a mute control for the same channel level as the third audio setting control 108. In one audio setting hierarchy, this level is often referred to as channel volume. There may be multiple channels, and each of them may carry a different name, such as “wave channel.” The third and fourth audio setting controls 108, 110 are typically not directly associated with any particular software application and would be used to cumulatively control the overall output volume of audio signals from all the software application. As illustrated in FIG. 1, the third and fourth audio setting controls are typically associated with some type of centralized user interface display 106 and can be represented as a slider bar 108 for adjusting the volume setting and mute control 110 on the display.
With still continued reference to FIG. 1, a fifth audio setting control 112 corresponds to a main volume setting processing all audio signals generated by all the channels in the software application. In a typical audio setting hierarchy, this level is often referred to as a main volume or master volume. A sixth audio setting control 114 corresponds to a mute control for the same main volume level as the fifth audio setting control 114. Similar to the third and fourth audio setting controls, the fifth and sixth audio setting controls are typically not directly associated with any particular software application and are used to adjust volume setting for all audio channels being processed by a computer system. As illustrated in FIG. 1, the fifth and sixth audio setting controls are typically associated with some type of centralized user interface display 106 and can be represented as a slider bar 112 for adjusting the volume setting and mute control 114 on the display.
One skilled in the relevant art will appreciate that a user manipulation of any one of the six illustrated audio setting controls can effect the overall output volume of a particular software application's audio signals. Accordingly, regardless of the number of levels in the typical audio setting hierarchy, no one control has the effect of offering full control of the overall output volume of the particular software application's audio signals. While each control can reduce the overall output volume, controls cannot increase output volume beyond the limitations set by the other controls. In particular, if a “mute” or “zero volume” control is being utilized, adjusting any other volume controls will show no effect. Additionally, in many situations, a computer user may have multiple software applications instantiated at one time such that the multiple software applications are capable of generating audio signal data. In order to obtain the maximal output volume for any application affected by the wave channel, the user has to maximize the volume settings of that channel. However, a user manipulation of some of the audio setting controls can also have the undesirable effect of modifying the overall output volume of audio signals of the other software applications. For example, a user manipulation of the third or fourth audio setting controls (e.g., the wave channel controls) would have the effect of adjusting the overall output volume of all the software applications audio signals being processed through the wave channel. Because so many audio settings controls can effect the overall output volume of the software application audio signals, users often cannot determine which audio setting control will achieve a desired result. For example, a user may manipulate the volume slide bars of a main audio control, channel audio control and software application volume control to increase overall output volume only to discover that one of the mute controls is negating the settings of the volume slide bars. Accordingly, the current set of interfaces for controlling audio setting controls can be inefficient in presenting a user with a representation of audio signal overall output volume for a software application and for controlling audio signal overall output volume for multiple software applications.
Thus, there is a need for a system and method for modeling audio signal overall output volume as product of various audio settings controls.